
# 字符串格式化

# 1. 字符串的格式化
print("我的名字叫%s" % '李四')
print("今年%d岁" % 27)
print("一斤苹果%f元" % 5.6)

# 1.1 m.n  m代表的宽度，默认是8位数 ，n代表小数点后保留的位数 。它放在%f的中间
print("保留3位数字->'%.3f'" % 659)
print("返回的数字宽度是8位，小数后两位，默认右对齐->'%8.2f'" % 659) #数字宽度8位，数字占了6位，剩余的两位被空格占用
print("返回的数字宽度是8位，小数后两位，设置左对齐->'%-8.2f'" % 659)
print("数字前显示+号->'%+8.2f'" % 659)
print("数字前显示-号->'%+8.2f'" % -659)
print("总宽度是8位，小数后两位，剩余空位用0补齐->'%08.2f'" % 659)


# 2. 字符串格式化 ：format()
print("我的名字叫{}".format('李四'))
print("今年{}岁".format(29))
print("一斤苹果{}元".format(5.7))

# 2.1 位置参数和关键字参数
print("我的名字叫{},今年{}岁".format('王五',30))
print("我的名字叫{0},今年{1}岁".format('王五',30))
print("我的名字叫{1},今年{0}岁".format('王五',30))
print("我的名字叫{name},今年{age}岁".format(name='王五',age=30))
print("我的名字叫{age},今年{name}岁".format(name='王五',age=30))

# 关键字参数和位置参数结合使用 ，位置参数必须放在前面
print("我的名字叫{},今年{age}岁".format('王五',age=30))
# print("我的名字叫{},今年{age}岁".format(age=30,'王五'))       # 报错